#pragma once
#include <d3d9.h>
#include <d3dx9.h>

namespace Minicraft
{
	namespace Constants
	{
		// The size of an individual face.
		static const float FACESIZE = 2.0f;

		// The length of a side of a cube.
		static const float CUBESIZE = FACESIZE * 2.0f;

		// The width of the screen.
		static const int SCREEN_WIDTH = 800;

		// The height of the screen.
		static const int SCREEN_HEIGHT = 600;

		namespace Camera
		{
			// represents the up position of the camera
			static const D3DXVECTOR3 upPosition = D3DXVECTOR3(0.0f, 1.0f, 0.0f);

			// the camera's field of view.
			static const int FOV = 45;

			// The front of the camera's view frustrum.
			static const float NEAR_VIEW_PLANE = 1.0f;

			// The bback of the camera's view frustrum.
			static const float FAR_VIEW_PLANE = 100.0f;

			// The minimum value the camera can look in the y direction
			static const float MIN_Y_LOOK = -100.0f;

			// The maximum value the camera can look in the y direction
			static const float MAX_Y_LOOK = 100.0f;
		}

		namespace Controls
		{
			// the speed the player moves.
			static const float MOVE_SPEED = 0.25f;

			// the speed the player looks around.
			static const float LOOK_SPEED = 0.25f;
		}
	}
}